package config

type Server struct {
	Mysql   Mysql   `json:"mysql" yaml:"mysql"`
	System  System  `json:"system" yaml:"system"`
	Wechat1 Wechat  `json:"wechat1" yaml:"wechat1"`
	Wechat  Wechat  `json:"wechat" yaml:"wechat"`
	Log     Log     `json:"log" yaml:"log"`
	EdgeTts EdgeTts `json:"edgeTts" yaml:"edgeTts"`
	Qiniu   Qiniu   `json:"qiniu" yaml:"qiniu"`
}

type System struct {
	Env         string `json:"env" yaml:"env"`
	Addr        int    `json:"addr" yaml:"addr"`
	DefaultTime int    `json:"defaultTime" yaml:"defaultTime"`
}

type Mysql struct {
	Username  string `json:"username" yaml:"username"`
	Password  string `json:"password" yaml:"password"`
	Path      string `json:"path" yaml:"path"`
	Dbname    string `json:"dbname" yaml:"dbname"`
	Config    string `json:"config" yaml:"config"`
	LogMode   bool   `json:"logMode" yaml:"logMode"`
	ParseTime bool   `json:"parseTime" yaml:"parseTime"`
	TimeZone  string `json:"timeZone" yaml:"timeZone"`
}

type Log struct {
	Prefix  string `json:"prefix" yaml:"prefix"`
	LogFile bool   `json:"logFile" yaml:"logFile"`
	Stdout  string `json:"stdout" yaml:"stdout"`
	File    string `json:"file" yaml:"file"`
}

type Wechat struct {
	Appid     string `json:"appid" yaml:"appid"`
	AppSecret string `json:"appSecret" yaml:"appSecret"`
	Home      string `json:"home" yaml:"mapstructure"`
}

type EdgeTts struct {
	VideoPath string `json:"videoPath" yaml:"videoPath"`
}

type Qiniu struct {
	AccessKey string `json:"accessKey" yaml:"accessKey"`
	SecretKey string `json:"secretKey" yaml:"secretKey"`
	Bucket    string `json:"bucket" yaml:"bucket"`
	ImgPath   string `json:"imgPath" yaml:"imgPath"`
}
